/**
 * 
 */
package ar.edu.utn.frgp.Banco.service;

import java.util.List;
import ar.edu.utn.frgp.Banco.model.Cliente;
import ar.edu.utn.frgp.Banco.model.Cuenta;
import ar.edu.utn.frgp.Banco.model.PagoServicios;
import ar.edu.utn.frgp.Banco.model.PlazoFijo;
import ar.edu.utn.frgp.Banco.model.Movimiento;
import ar.edu.utn.frgp.Banco.model.Servicios;

public interface IRecursoService {
	
	public List<Cliente> getClientes();
	public Cliente getCliente(String dni);
	public void crearCliente(Cliente cliente) throws Exception;
	void modificarCliente(Cliente cliente) throws BusinessException;
	void bajaCliente(Cliente cliente) throws BusinessException;
	
	public List<Cuenta> getCuentas();
	public void crearCuenta(Cuenta cuenta) throws Exception;
	public void ActualizarSaldoCuenta(Cuenta cuenta) throws BusinessException;
	void actualizarDescubierto(Cuenta cuenta, Double nuevoDescubierto) throws BusinessException;
	void modificarCuenta(Cuenta cuenta) throws BusinessException;
	void bajaCuenta(Cuenta cuenta) throws BusinessException;
	
	public void crearPlazoFijo(PlazoFijo plazofijo) throws Exception;
	public List<PlazoFijo> getPlazoFijos();
	
	public List<Movimiento> getMovimientos();
			
	public List<Servicios> getServicios();
	public void crearPagoServico(PagoServicios pagoservicio) throws Exception;
	public void ActualizarSaldoCuentaPorPagoServicio(PagoServicios pagoservicios);
	public List<PagoServicios> getPagoServicios();
	
	 void crearServicio(Servicios servicio) throws BusinessException;
	
}
